package net.lab1024.sa.admin.module.business.datasource.domain.vo;

import lombok.Data;

import java.util.List;
import java.util.Map;

/**
 * 查询结果VO
 *
 * @Author 1024创新实验室-主任:卓大
 * @Date 2024-01-01 00:00:00
 * @Wechat zhuoda1024
 * @Email lab1024@163.com
 * @Copyright <a href="https://1024lab.net">1024创新实验室</a>
 */
@Data
public class QueryResultVO {

    /**
     * 列信息
     */
    private List<ColumnInfo> columns;

    /**
     * 数据行
     */
    private List<Map<String, Object>> rows;

    /**
     * 总行数
     */
    private Long total;

    /**
     * 执行时间(毫秒)
     */
    private Long executionTime;

    /**
     * 影响行数
     */
    private Integer affectedRows;

    /**
     * 是否成功
     */
    private Boolean success;

    /**
     * 错误信息
     */
    private String errorMessage;

    /**
     * 列信息
     */
    @Data
    public static class ColumnInfo {
        /**
         * 列名
         */
        private String name;

        /**
         * 列标签
         */
        private String label;

        /**
         * 数据类型
         */
        private String type;

        /**
         * 列宽度
         */
        private Integer width;
    }
} 